package com.jiangyao.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.jiangyao.model.dto.ClassUserDto;
import com.jiangyao.model.dto.backend.UserExperienceDTO;
import com.jiangyao.model.dto.backend.UserExperienceDetailDTO;
import com.jiangyao.model.dto.backend.UserExperienceListPageDTO;
import com.jiangyao.model.entity.UserExperience;
import com.baomidou.mybatisplus.extension.service.IService;
import com.jiangyao.model.vo.ExperienceVo;
import com.jiangyao.model.vo.backend.UserExperienceListVO;

/**
 * <p>
 * 成员个人经历 服务类
 * </p>
 *
 * @author xiangyan
 * @since 2020-08-17
 */
public interface UserExperienceService extends IService<UserExperience> {
    ExperienceVo getUserExperience(ClassUserDto dto);

    /**
     * 获取工作年限
     * @return
     */
    Integer getUserExperienceWorkTear();

	/**
	 * 获取个人档案列表
	 *
	 * @param listPageDTO 列表DTO
	 * @return 结果
	 */
	Page<UserExperienceListVO> getListPage(UserExperienceListPageDTO listPageDTO);

	/**
	 * 添加个人档案
	 *
	 * @param addDTO 添加个人档案DTO
	 */
	void add(UserExperienceDTO addDTO);


	/**
	 * 编辑个人档案
	 *
	 * @param editDTO 添加个人档案DTO
	 */
	void edit(UserExperienceDTO editDTO);

	/**
	 * 编辑审核状态
	 *
	 * @param auditDTO 审核DTO
	 */
	void editStatus(UserExperienceDTO auditDTO);

	/**
	 * 获取个人档案详情
	 *
	 * @param detailDTO 详情DTO
	 * @return 结果
	 */
	UserExperienceListVO getDetail(UserExperienceDetailDTO detailDTO);
}
